
#include "ComparaCartasSegundoOValor.h"

/* Clause SEES */
#include "Bool_TYPE.h"
#include "ComparacaoDeCartas.h"
#include "SetsCarta.h"

/* Clause CONCRETE_CONSTANTS */
/* Basic constants */

/* Array and record constants */
/* Clause CONCRETE_VARIABLES */

static int32_t ComparaCartasSegundoOValor__val1R;
static int32_t ComparaCartasSegundoOValor__val2R;
static Bool_TYPE__resposta ComparaCartasSegundoOValor__naoEmComparacaoDeValoresR;
/* Clause INITIALISATION */
void ComparaCartasSegundoOValor__INITIALISATION(void)
{
    
    ComparaCartasSegundoOValor__val1R = 0;
    ComparaCartasSegundoOValor__val2R = 0;
    ComparaCartasSegundoOValor__naoEmComparacaoDeValoresR = Bool_TYPE__true;
}

/* Clause OPERATIONS */

void ComparaCartasSegundoOValor__valor1VenceValor2(SetsCarta__valores valor1, SetsCarta__valores valor2)
{
    ComparacaoDeCartas__valorEmInteiro(valor1, &ComparaCartasSegundoOValor__val1R);
    ComparacaoDeCartas__valorEmInteiro(valor2, &ComparaCartasSegundoOValor__val2R);
    ComparaCartasSegundoOValor__naoEmComparacaoDeValoresR = Bool_TYPE__false;
}

void ComparaCartasSegundoOValor__terminarValor1VenceValor2(Bool_TYPE__resposta *rr)
{
    if((((ComparaCartasSegundoOValor__val1R) > (ComparaCartasSegundoOValor__val2R)) ||
        (((ComparaCartasSegundoOValor__val1R == 1) &&
                ((((ComparaCartasSegundoOValor__val2R == 11) ||
                            (ComparaCartasSegundoOValor__val2R == 12)) ||
                        (ComparaCartasSegundoOValor__val2R == 13)))))))
    {
        (*rr) = Bool_TYPE__true;
        ComparaCartasSegundoOValor__naoEmComparacaoDeValoresR = Bool_TYPE__true;
    }
    else
    {
        (*rr) = Bool_TYPE__false;
        ComparaCartasSegundoOValor__naoEmComparacaoDeValoresR = Bool_TYPE__true;
    }
}

